﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SqlCeProvider.Enums
{
    /// <summary>
    /// Use SqlCe Connection String Booleans as Flags
    /// </summary>
    [Flags]
    public enum SqlCeFlags
    {
        /// <summary>
        /// if only None selected, all boolean settings will be set to false. Not recomended.
        /// </summary>
        None = 0,
        /// <summary>
        /// Gets or sets a value that indicates whether or not the database collation is case-sensitive.
        /// </summary>
        CaseSensitive = 1 << 0,
        /// <summary>
        /// A Boolean value that determines whether or not the database is encrypted. 
        /// Must be set to true to enable encryption or false for no encryption. 
        /// If not specified, the default value is false. If you enable encryption, 
        /// you must also specify a password with the password property. 
        /// If you specify a password, encryption is enabled regardless of how you set this property.
        /// </summary>
        Encrypt = 1 << 1,
        /// <summary>
        /// true if a connection database is opened by using Enlist, otherwise, false.
        /// </summary>
        Enlist = 1 << 2,
        /// <summary>
        /// When set to false (which is strongly recommended), 
        /// security-sensitive information, such as the password, 
        /// is not returned as part of the connection if the connection is open or has ever been in an open state. 
        /// Resetting the connection string resets all connection string values, including the password. The default value is false.
        /// </summary>
        PersistSecurityInfo = 1 << 3
    }
    /// <summary>
    /// Define SQL Compact Edition Encryption Mode
    /// </summary>
    public enum SqlCeEnryptionMode
    {
        None,
        Engine_Default,
        Platform_Default
    }
    /// <summary>
    /// SQLCe Database Read mode.
    /// </summary>
    public enum SqlCeFileMode
    {
        None,
        Exclusive,
        Read_Only,
        Read_Write,
        Shared_Read
    }
}
